1. Field of the Invention
The present invention generally relates to a system and method for saving power when looking up pixel compensation values and more particularly to a system and method which saves power during the look-up process for gamma compensation pixel data.
2. Description of the Related Art
A graphics controller is used to process video data for a computer system in order to display the data on a monitor. Referring to FIG. 1, a graphics controller 10 for converting graphics data from a CPU 12 for display on a monitor 14 is shown. The graphics controller 10 communicates with the CPU 12 through a PCI/AGP bus 16. The bus 16 communicates with a graphics engine and video engine 18 to process data/command signals from the CPU 12 and generate visible pixel data on the monitor 14. For example, the video engine decodes compressed video data to video pixel data, and the graphics engine executes CPU commands to generate graphics data that draws the desired shape on the monitor. Accordingly, the graphics engine and video engine 18 processes the abstract data from the CPU into pixel/graphics data.
The pixel/graphics data processed by the graphics and video engine 18 is transferred to a memory 20 for temporary storage. A display processor 22 of the graphics controller 10 reads the pixel/graphics data from the memory 20. Specifically, the display processor 22 takes the pixel/graphics data from the memory 20 and processes the data with a graphics and video processor 24 into RGB:888 digital data. A digital-to-analog converter (DAC) 26 converts the RGB:888 digital data into RGB analog signals that are displayed on the monitor 14. For example, the pixel data in the memory 20 may be in RGB:8 (pseudo color), RGB:565, RGB:888 or RGB:x888 bit format. The graphics and video processor 24 will convert the graphics pixel data into the RGB:888 bit format. Alternatively, the graphics and video processor 24 can convert the video pixel data from YCbCr:422, YCbCr:420 bit formats into the RGB:888 bit format. The graphics and video processor 24 can also merge the graphics pixel data with the video pixel data for display on the monitor 14.
After processing by the graphics and video processor 24, the RGB:888 data may be gamma compensated for display on various monitors. Specifically, the gamma compensation adjusts for non-linear differences in pixel brightness levels between different monitors. A look-up table (LUT) 28 of the display processor 22 applies the gamma compensation to the pixel data before being converted to RGB analog signals by the DAC 26. The LUT 28 adjusts the pixel data to achieve consistent brightness on the monitor 14.
Referring to FIG. 2, the configuration for a prior art LUT 28 is shown. The LUT 28, receives pixel data [23:0] from the graphics and video processor 24. The pixel data is separated into 8 bit color components Red_data, Green_data, and Blue_data which are used to address respective Synchronous (Sync) RAMs 30a, 30b, and 30c. Specifically, at system startup, the Sync RAMs 30a, 30b, and 30c are loaded with gamma compensation pixel data for the monitor 14. The pixel data Red_data, Green_data, and Blue_data address a respective Sync RAM 30a, 30b and 30c in order to read the gamma compensation pixel data contained therein. In this regard, each Sync RAM 30a, 30b, and 30c generates respective gamma compensation pixel data Red_LUTout, Green_LUTout, and Blue_LUTout. The output data (Red_LUTout, Green_LUTout, and Blue_LUTout) from each Sync RAM 30a, 30b, 30c are converted to analog signals by the DAC 26 and then combined for display by the monitor 14. If there is no gamma compensation pixel data for the monitor 14, then the pixel data can bypass the LUT 28 and go directly to the DAC 26. If the graphics data is in pseudo color format, then the LUT 28 can also be used to convert the 8 bit pseudo color data into 24 bit true color data. Furthermore, it is also possible to use the LUT 28 for other types of graphics/video processing. For instance, the LUT 28 can be used to achieve a negative affect on the monitor by loading the Sync RAMs 30a, 30b, and 30c with appropriate compensation pixel data to achieve the desired effect.
A disadvantage of the prior art LUT 28 is that power consumption is excessive during the look-up process. Every time the pixel data addresses the LUT 28 in order to generate the compensation pixel data, the LUT 28 consumes power. In the prior art LUT 28, each pixel is used to check the LUT 28 for compensation pixel data such that power is always being consumed.
However, if the LUT 28 is not looking-up data, very little power is consumed. It will be recognized that power savings become very important as the size of graphics controllers are increasing. By reducing the power consumption of the graphics controller, the heat and temperature generated by the system can be reduced and the battery life can be increased.
The present invention addresses the above-mentioned deficiencies in the prior art graphics processing system by providing a system and method which reduces the power needed for gamma compensation by the graphics controller 10. Specifically, the present invention provides a system and method whereby addressing and lookup of compensation pixel data is minimized thereby resulting in a power savings for the graphics controller 10.